#include <stdio.h>
#define SIZE 100

int PrintArtix(int (*data)[SIZE][SIZE],int m,int n,int flag = 0){
	for(int i = 0;i < m;i++){
		printf("%d",data[flag][i]);
	}
	for(int j = 0;j < n;j++){
		printf("%d\n",data[j][n-1-flag]);
	}
	for(int k = n-1;k >= 0;k--){
		printf("%d\n",data[m-1-flag][k]);
	}
	for(int l = m-1;l >= 0;l--){
		printf("%d\n",data[l][flag]);
	}
	flag++;
	return(data,m,n,flag);
}
int main(){
	int m,n;
    scanf("%d %d",&m,&n);
    int data[m][n];
    for(int i = 0;i < m;i++){
    	for(int j = 0;j < m;j++){
    		scanf("%d",&data[i][j]);
    	}
    }
    PrintArtix(&data,m,n,0);
	return 0;
}